package com.sss.hloster07;

import java.util.Scanner;
import java.util.Scanner;

public class JavaExercise37 {

	public static void main(String[] args) {
		test37();
	}

	/**
	 * 有n个人围成一圈，顺序排号。从第一个人开始报数（从1到3报数），凡报到3的人退出圈子，问最后留下的是原来第几号的那位
	 */
	private static void test37() {
		Scanner sc = new Scanner(System.in);
		System.out.print("请输入排成一圈的人数：");
		int n = sc.nextInt();
		boolean[] arr = new boolean[n];
		for (int i = 0; i < arr.length; i++) {
			arr[i] = true;
		} // 数组的数值都是true
		int Count = n;//数组中数值为true的个数
		int Num = 0;//报数叠加
		int index = 0;//数组下标
		while (Count > 1) {
			if (arr[index] == true) {
				Num++;
				if (Num == 3) {
					Num = 0;
					arr[index] = false;
					Count--;
				}
			}
			index++;//数组下标+1
			if (index == n) {
				index = 0;
			}
		}
		for (int i = 0; i < n; i++) {
			if (arr[i] == true) {
				System.out.println("原排在第" + (i + 1) + "位的人留下了。。");
			}
		}
	}
}
